[Blog] 옵시디언(Obsidian)으로 블로그 만들어보기 (Feat. Quartz)
April 01, 2025블로그 만들기…
…
k8s 버전 정책 (Skew Policy) 쿠버네티스는 업스트림 마이너 버전을 평균 4개월에 한 번씩 Release 합니다. 그렇기에 새로운 마이너 버전이 Release…
개요 안녕하세요 !~ 오늘은 Fortinet의 FortiGate 방화벽을 사용해서 VPN을 구축하는 방법에 대해 기록해보려고 합니다! 특히 과 두 가지 시나리오를 통해 실무에서 자주 쓰이는 설정을 UI(웹 인터페이스)와 CLI…
…
개요 PNETLAB을 구축하는 방법과 PNETLab에서 장비 이미지(에뮬레이터)들을 준비하고, 이를 이용하여 기본적인 랩 환경을 구성하는 방법에 대한 가이드를 작성해보려고 합니다! PNETLab의 경우 eve-ng와 동일하게 프로젝트의 Fork…
개요 이번 게시글에서는 리눅스 컨테이너(LXC)에 대해서 알아보려고 합니다. LXC가 뭐고, 왜 사용하는지, 도커와는 어떻게 다른지, 그리고 실제로 어떻게 구축하는 지 등 모든걸 다뤄봅시다. LXC란 무엇인가? Image [출처: https://www…
개요 오늘 포스팅에서는 Nginx 환경에서 HTTPS를 설정 하는 방법과 Let's Encrypt를 활용해 무료 SSL…
개요 현대 IT 인프라 환겨에서는 일관성, 효율성, 그리고 관리 편의성을 높이기 위해 다양한 배포 방식이 사용됩니다. 전통적으로는 물리 서버나 가상화 소프트웨어(VMware 등)을 통해 각 서버에 OS…
개요 오늘 게시글에서는 22.0…
Nginx FancyIndex Nginx에서는 특정 디렉토리 안에 있는 파일들을 자동으로 정렬해주는 기능이 있어요! 근데 는 너무 단조로워요 .. Image 이러한 단조로움을 를 사용해서 개선할 수가 있는데요! 는 nginx…
개요 이번 게시글에서는 시스템 구성 정보를 확인할 수 있는 여러 명령어를 기록해보려고 합니다! 커널 정보 확인하기 uname (Unix NAME) 운영체제의 정확한 버전을 알고 싶다면 다음과 같이 확인할 수 있습니다! dmesg (Display…
개요 이번 게시글에서는 TCP 통신이 어떻게 시작되고 종료되는지, 그 과정에서 왜 상태가 필요한지, 그리고 이 상태가 때로는 왜 문제가 되며 어떻게 대처할 수 있는지 Nginx 실습 예제와 함께 이해해보겠습니다! TCP 통신 과정 TCP…
1. 개요 이번 포스팅에서는 Wireguard의 기본 개념, VPN 피어(Peer), 내부 IP 주소의 이해 그리고 리눅스 서버 및 Windows…
개요 24시간 돌아가는 Proxmox 운영 서버에 eve-ng 네트워크 랩 서버가 동작하고 있다. 이전까지는 네트워크 관련 실습을 하고 싶을 때마다 집에서 데스크탑 또는 노트북으로 lab…
개요 데이터베이스를 운용 중이라면 백업은 정말 필수적이라고 할 수 있는데요. 오늘은 많은 분들이 사내 혹은 가정내에서 사용하고 계실 Synology NAS를 활용하여 도커 컨테이너의 DB…
logging
Python
Python
…
개요 최근에 GUI 애플리케이션을 개발하면서 문득 든 생각인데, 백그라운드에서 시간이 많이 걸리는 작업(예: 웹 스크래핑)을 수행할 때 사용자에게 현재 진행 상황을 실시간으로 보여주는 Progress bar가 UI…
개요 사용자가 만든 GUI 애플리케이션에서, 사용자가 입력한 설정(예: 페이지 수, URL 등)을 프로그램 종료 후에도 자동으로 저장하고, 이를 불러오는 방법에 대해 기록해보려고 한다. PySide…
개요 PySide6를 사용하여 만든 GUI 프로그램에서 의 모든 컬럼들이 GUI 화면의 남은 공간을 균등하게 채우도록 설정하는 방법에 대해서 기록해보려고 한다! 문제 상황 Image…
…
Python
Python
…
Python
Python
개요 로 패키징된 파일을 디컴파일 하는 방법과 로 코드 난독화를 진행하고 난독화가 된 파일을 를 디컴파일 했을 때와 동일하게 진행하면 어떤 결과가 나오는지 기록해보려고 한다! PyInstaller Decompile…
개요 PySide6의 을 활용하여 Drag and Drop 기능을 구현해보려고 한다. Honeycam 2025-01-14 22-26-02 코드 작성 아래 코드는 PySide6로 Drag-And-Drop…
개요 PySide6를 사용하여 GUI…
개요 PySide6를 활용하여 "폴더 선택" 및 "파일 선택" 기능을 구현하는 방법에 대해 기록해보려고 한다. QFileDialog 주요 메소드 및 예제 폴더 선택 (QFileDialog.getExistingDirectory) PySide…
개요 오늘은 PySide6를 활용하여 시/도 -> 시/군/구 -> 읍/면/동 단계별로 연동되는 지역 선택 기능을 구현해볼거다. example 목표 1. 시/도 선택: 첫 번째 에서 시/도를 선택한다.…
QThread를 사용하는 이유 UI 블로킹 방지: 메인 스레드(주로 UI 스레드)를 차단하는 작업을 QThread로 옮겨 실행하면, UI가 멈추지 않고 계속 반응하도록 처리할 수 있다. Qt의 이벤트 루프와 자연스럽게 연동: QThread…
들어가며 PySide6와 Selenium을 함께 사용해 GUI…
개요 PySide6는 파이썬에서 Qt 라이브러리를 사용할 수 있도록 도와주는 도구로, 다양한 플랫폼에서 GUI 애플리케이션 개발이 가능하다. 이번 글에서는 PySide6를 이용해 기본적인 GUI…
HAProxy
사전 학습 해당 포스팅은 프록시 서버에 대해 이해하기, Forward Proxy 구축하기와 이어지기에 해당 내용을 보고 오는 것을 추천합니다! Reverse Proxy image Reverse Proxy…
사전 학습 해당 포스팅은 프록시 서버에 대해 이해하기와 이어지기에 해당 내용을 보고 오는 것을 추천합니다! Forward Proxy image 구성에 앞서, Forward Proxy…
…
개요 이번 게시글에서는 도커 컨테이너에서 CPU를 최적으로 활용하는 방법에 대해서 기록해보려고 한다. 호스트 CPU Core 정보 확인 먼저 컨테이너에 CPU를 최적으로 할당하기 위해서는, 현재 호스트 시스템의 CPU…
DNS Record
개요 집에 NAS를 들여오게 되면서 내부망 구조를 조금 바꾸게 되었다. 원래의 구조는 내 방 벽단자에 들어오 는 WAN 선을 공유기 WAN 포트에 연결하고, 공유기 LAN 포트에 데스크탑, 서버(X300)가 연결되어 사용 중이었고, 이번에 NAS…
개요 최소 GB 단위부터 시작하여 TB 단위에 이르는 대용량 파일 데이터를 이관하기 위해 rsync를 활용한 쉘 스크립트를 작성해보고자 한다. Rsync…
…
개요 최근 eve-ng에서 Fortinet 방화벽(Fortigate)을 활용해 Active-Passive 형태의 HA(High Availability) 구성을 완료하였습니다. HA…
개요 IP SLA를 사용해서 방화벽의 Active 상태를 감지하고 트래픽을 우회시키는 방법을 다뤄보려고 합니다! 실습 환경 Image 먼저 제가 구축한 환경을 간단히 소개할게요: 장비: 방화벽 2대(Active-Passive HA), L3 스위치…
…
개요 셀레니움으로 네이버 로그인을 진행할 때 을 사용하면 헤드리스(headless)를 활성화할 수 없는 문제가 발생한다. 셀레니움의 모드에서는 클립보드 접근이 제한되기 때문이다. 모드는 브라우저 UI…
Selenium
Python
개요 도커 스웜(Docker Swarm)을 사용하여 포토 형식의 커뮤니티 서비스 배포 image 이번 게시글을 통해 기존에 도커 컴포즈로 배포했을 때와 어떤 차이점이 있는지, 컨테이너간 파일 시스템(FS…
Traefik
개요 텔레그램에서 제공하는 를 활용하여 파이썬으로 텔레그램 메시지 보내기 실습을 진행해보자. 파이썬에서는 텔레그램 Bot API를 쉽게 사용할 수 있는 이라는 라이브러리가 존재한다 봇 생성 1. 텔레그램 앱에서 /newbot…
PR Review
Docker DNS
Python
개요 이번 게시글에서는 소규모 네트워크에서 스위칭 환경을 L2, L3 모드로 구축하는 과정에 대해서 기록해보려고 한다. 백본에서 이중화 구성(VRRP)은 이미 진행되어 있다는 가정하에 밑에 하단 서버팜 환경을 L2 / L3 각각으로 구성하여, L…
tcpdump로 패킷을 파일로 저장하기 활용 방법 : 패킷의 내용을 출력하고 싶은 인터페이스의 이름으로 지정한다. : 패킷들의 내용을 파일로 저장하고 싶을 때 사용하는 옵션…
개요 이번 게시글에서는 파이썬에서 조건 검사를 간결하고 효율적으로 처리할 수 있게 해주는 내장 함수인 에 대해 기록해보려고 한다. 1. any() 함수란? 함수는 반복 가능한(iterable) 객체 의 요소 중 하나라도 참(True…
Yield 일반적으로 프로그래밍에서의 함수는 어떤 결과 값을 키워드를 이용해 값을 반환 한다. 하지만 파이썬에서는 함수에서 키워드를 사용하면 다른 방식으로 값을 반환할 수도 있다. 간단한 예제 코드를 보며 이해해보자. 먼저, 문자열 q,w,e…
소규모 네트워크 환경 구축해보기
Python
▶ 개요 Proxmox 환경에서 EVE-NG 서버를 구축하는 방법과 장비 이미지를 어떻게 import 하는지 알아보도록 하자. ▶ ISO 다운로드 eve-ng 홈페이지에서 Free EVE Community Edition ISO…
Python
…
Python
개요 장비별로 관리 IP를 설정하고, Admin 네트워크 () 대역의 Admin PC에서 각 장비별 SSH 접속 테스트를 하다가 DMZ 스위치의 SSH…
…
…
…
Shell Script
개요 GPG 암호화를 사용하여 서버 비밀번호를 통합 관리하고, 이를 Git과 연동해보려고 한다. 이렇게 하면 서버 비밀번호를 안전하게 관리하면서 버전 관리 시스템을 통해 변경 이력을 추적할 수 있게 된다. 관리 방법 GPG…
서버 장애 시 체크 목록
개요 이번 게시글에서는 홈서버에서 게임 서버를 운영하면서 겪은 DDoS 공격 문제와 이를 해결하기 위해 과 NPM()를 활용한 경험을 기록해보려고 한다. 문제 상황 최근 홈서버에서 게임 서버를 운영하던 중 빈번한 DDoS…
GlusterFS 도입
docker stack
스웜으로 애플리케이션 배포
스웜 클러스터 구축
도커 스웜에 대해서
WireGuard
PostgreSQL 데이터 백업
개요 바로 이전 게시글에서 ELK + Filebeat로 로그 관리 시스템 구축을 진행했었다. 개인용 서버에서 무거운 ELK 스택을 쓸 이유가 굳이 있을까? 라는 생각이 들었다. 그리고 ELK…
개요 최근 운영 중인 리눅스 서버들을 모니터링 하기 위해서 Prometheus와 Grafana를 통해 각 서버들의 메트릭을 수집하고 시각화를 해봤었다. (Prometheus의 node-exporter…